home *** CD-ROM | disk | FTP | other *** search
/ Softwarová Záchrana 3 / Softwarova-zachrana-3.bin / Xteq X-Setup / xqdcXSP-Setup-EN.exe / {app} / plugins / XQ WinXP Start Menu 6.xpl < prev    next >
Text File  |  2003-12-08  |  2KB  |  64 lines

  1. "FILE"="Xteq Systems X-Setup Plugin 6.0"
  2. "TYPE"="5"
  3. "COUNT"="1"
  4. "UIPATH 1"="Appearance\Start Menu\Windows XP\Classic Start Menu"
  5. "UIPATH 2"="Appearance\Start Menu\Windows XP\New Start Menu"
  6. "NAME"="Sort Programs Menu"
  7. "VERSION"="2.02"
  8. "LANGUAGE"="VBScript"
  9. "OSVERSION"="0000011"
  10. "TEXT 1"="Sort All Programs menu alphabetically"
  11. "DESCRIPTION 1"="Windows allows you do use your own sort order inside the Programs menu."
  12. "DESCRIPTION 2"="Although this is a good feature, you might want to have an alphabetically order."
  13. "DESCRIPTION 3"="If you want to order a single folder inside the Programs menu, just right-click any item in this folder with the right mouse-button and select "Sort by names" from the appearing menu."
  14. "DESCRIPTION 4"="If you want ALL items in ALL folders of the Programs menu sorted, click this button."
  15. "AUTHOR"="Xteq Systems"
  16. "CONTACTURL"="http://www.xteq.com/"
  17. "COPYRIGHT"="Copyright ⌐ Xteq Systems - All Rights Reserved"
  18. "COMMENT 1"="Thanks to Adam Kautz [akautz@hotmail.com] for the idea!"
  19.  
  20. sP="HKCU\Software\Microsoft\Windows\CurrentVersion\Explorer\MenuOrder\Start Menu\Programs"
  21.  
  22. Sub Plugin_Initialize 
  23. End Sub
  24.  
  25. Sub Plugin_CheckData(ElementIndex)
  26. End Sub
  27.  
  28. Sub Plugin_Apply(ElementIndex,ElementSubIndex)
  29.  if ElementIndex=1 then 
  30.     Call DoWork(sP)
  31.  
  32.     Call MsgInformation("Your Programs menu is now sorted")
  33.  end if
  34.  
  35. End Sub
  36.  
  37. Sub DoWork(path)
  38.  Dim aryPaths()
  39.  
  40.  i=RegEnumPaths(path)
  41.  if i>0 then
  42.     ReDim aryPaths(i)
  43.  
  44.     for l=1 to i
  45.        aryPaths(l)=RegEnumElement(l)
  46.     Next
  47.  
  48.     for l=1 to i
  49.         Call DoWork(path & "\" & aryPaths(l))
  50.         'Call MsgInformation(path & "\" & aryPaths(l))
  51.         Call RegDeletePath(path & "\" & aryPaths(l))
  52.     next 
  53.  end if
  54.  
  55.  if RegValueExists(path & "\Order") then
  56.     Call RegDeleteValue(path & "\Order")
  57.  end if
  58.  
  59. End Sub
  60.  
  61.  
  62. Sub Plugin_Terminate 
  63. End Sub
  64.